I use this script right now to force weapons on my server:
MikeTorso.St to exec weapontrade.scr
state RAISE_WEAPON { movetype legs entrycommands { viewmodelanim pullout //exec player/player_raise.scr exec global/weapontrade.scr // just to make sure nothing funky's // attached that shouldn't be. correctweaponattachments }
weapontrade.scr to set the weapons allowed:
if (int(getcvar(brats_weapons)) == 1) { if(self.dmteam == "allies") { local.m1_garand = "models/weapons/m1_garand.tik" local.springfield = "models/weapons/springfield.tik" local.thompsonsmg = "models/weapons/thompsonsmg.tik" local.bar = "models/weapons/bar.tik" local.bazooka = "models/weapons/bazooka.tik" local.shotgun = "models/weapons/shotgun.tik" local.kar98 = "models/weapons/kar98.tik" local.kar98sniper = "models/weapons/kar98sniper.tik" local.mp40 = "models/weapons/mp40.tik" local.mp44 = "models/weapons/mp44.tik" local.panzerschreck = "models/weapons/panzerschreck.tik" waitframe local.n = randomint 99999 self weaponcommand dual targetname ("w" + local.n) local.weap = $("w" + local.n).model if(local.weap == local.m1_garand) { self give local.weap self use local.weap waitframe self give models/weapons/colt45.tik self give models/weapons/m2frag_grenade.tik } if(local.weap == local.springfield) { self give local.weap self use local.weap waitframe self give models/weapons/colt45.tik self give models/weapons/m2frag_grenade.tik } if(local.weap == local.thompsonsmg) { self give local.weap self use local.weap waitframe self give models/weapons/colt45.tik self give models/weapons/m2frag_grenade.tik } if(local.weap == local.bar) { self give local.weap self use local.weap waitframe self give models/weapons/colt45.tik self give models/weapons/m2frag_grenade.tik } if(local.weap == local.bazooka) { self give local.weap self use local.weap waitframe self give models/weapons/colt45.tik self give models/weapons/m2frag_grenade.tik } if(local.weap == local.shotgun) { self give local.weap self use local.weap waitframe self give models/weapons/colt45.tik self give models/weapons/m2frag_grenade.tik } } if(self.dmteam == "axis") { local.m1_garand = "models/weapons/m1_garand.tik" local.springfield = "models/weapons/springfield.tik" local.thompsonsmg = "models/weapons/thompsonsmg.tik" local.bar = "models/weapons/bar.tik" local.bazooka = "models/weapons/bazooka.tik" local.shotgun = "models/weapons/shotgun.tik" local.kar98 = "models/weapons/kar98.tik" local.kar98sniper = "models/weapons/kar98sniper.tik" local.mp40 = "models/weapons/mp40.tik" local.mp44 = "models/weapons/mp44.tik" local.panzerschreck = "models/weapons/panzerschreck.tik" waitframe local.n = randomint 99999 self weaponcommand dual targetname ("w" + local.n) local.weap = $("w" + local.n).model if(local.weap == local.kar98) { self give local.weap self use local.weap waitframe self give models/weapons/p38.tik self give models/weapons/steilhandgranate.tik } if(local.weap == local.kar98sniper) { self give local.weap self use local.weap waitframe self give models/weapons/p38.tik self give models/weapons/steilhandgranate.tik } if(local.weap == local.mp40) { self give local.weap self use local.weap waitframe self give models/weapons/p38.tik self give models/weapons/steilhandgranate.tik } if(local.weap == local.mp44) { self give local.weap self use local.weap waitframe self give models/weapons/p38.tik self give models/weapons/steilhandgranate.tik } if(local.weap == local.panzerschreck) { self take local.weap self give local.bazooka self use local.bazooka waitframe self give models/weapons/p38.tik self give models/weapons/steilhandgranate.tik } if(local.weap == local.shotgun) { self give local.weap self use local.weap waitframe self give models/weapons/p38.tik self give models/weapons/steilhandgranate.tik } } if(self.dmteam == "spectator") { self takeall } }
and there are 10 different versions of the above script to give different guns based on the weapon you pick from the menu. Right now, I have to do an rcon restart for the changes to take effect. I'd like the changes to happen as soon as I change the "brats_weapons" variable via console. Also if there's any way to clean that script up, it might be worth it.. It doesn't give me any issues as is, but I'm sure Double will see a way to make it more efficient ;P



Reply With Quote
